package com.heima.test93;


import java.util.Scanner;

/**
 * 2.编写一个java程序，提示用户输入一个字符串，要求字符串中必须存在字母（需要代码判断）
 a. 若不符合要求，则提示用户重新输入直到符合要求为止
 b. 若符合要求 ，则判断字符串中的大写字母出现的次数并且打印
 */
public class Test02 {

    public static void main(String[] args) {



        Scanner scanner = new Scanner(System.in);
        while (true) {
            System.out.println("输入一个字符串，要求字符串中必须存在字母");
            String string = scanner.next();
            boolean method = method(string);
            if (method) {
                int sum = method2(string);
                System.out.println(sum);
                break;
            }
        }

    }

    /**
     *
     * @param s 需要统计大写字母的字符串
     * @return   出现的数量
     */
    public static int method2(String s){

        int sum = 0;
        char[] chars = s.toCharArray();
        for (int i = 0; i < chars.length; i++) {
            if (chars[i]<='Z' && chars[i]>='A'){
                System.out.println(chars[i]);
                sum++;
            }
        }
        return sum;
    }


    /**
     *  该方法适用于检测字符串中是否包含字母（z-a   ）
     * @param s  需要检测的字符串
     * @return   是否有字母 true 是有字母  false 没有字母
     */
    public static boolean method(String s){
        char[] chars = s.toCharArray();
        for (int i = 0; i < chars.length; i++) {
            if ((chars[i]<='Z' && chars[i]>='A') || (chars[i]>='a' && chars[i]<='z')){
                return true;
            }
        }
        return false;
    }
}
